There exist conventional label printers that print out continuously onto labels essentially identical images with partial differences added thereto. One such label printer is disclosed in U.S. Pat. No. 5,156,468. FIG. 8 shows typical labels issued by the disclosed label printer. As illustrated, essentially identical images with partial differences, i.e., "PRINTER 001," "PRINTER 002," "PRINTER 003," etc., are printed on labels 101.sub.1, 101.sub.2, 101.sub.3, etc.
FIGS. 9(A), 9(B) and 9(C) depict typical storage areas adopted by conventional label printers for printing out essentially identical images with partial differences. The storage area is generally constituted by a RAM (random access memory), and includes a storage area 105 for constant data 103 shown in FIG. 9 (A) and a storage area 106 for variable data 104 depicted in FIG. 9(B). The storage area 105 for the constant data 103 comprises an update field 109 that selectively accommodates one of variable data 104.sub.1, 104.sub.2, 104.sub.3, etc. In the example of FIGS. 9(A) through 9(C), the storage area 105 stores "PRINTER" as the constant data 103 and the storage area 106 contains "001," "002," "003," etc., as a plurality of variable data 104.sub.1, 104.sub.2, 104.sub.3, etc. FIG. 9(C) shows image buffers furnished in the storage areas. In these image buffers, the constant data 103 is combined with the variable data 104.sub.1, 104.sub.2, 104.sub.3, etc., to generate image data 102.sub.1, 102.sub.2, 102.sub.3, etc., representing "PRINTER 001," "PRINTER 002," "PRINTER 003," etc. Generation of the image data 102 is effected through data processing by microcomputer.
FIGS. 10(A) through 10(G) show steps to generate through an image buffer arrangement the image data for continuously printing out essentially identical images with partial differences. To execute the steps in FIGS. 10(A) through 10(G) requires providing two image buffers 107 and 108. The steps of image data generation will now be described with reference to FIGS. 8 through 10. Initially, the constant data 103 is read from the storage area 105 and placed in the first image buffer 107 (see FIG. 10(A)). The first variable data 104.sub.1 is then read from the storage area 106 and placed into the update field 109 within the constant data 103 placed in the first image buffer 107 (FIG. 10(B)). This generates first image data 102.sub.1 "PRINTER 001" in the first image buffer 107. After the first image data 102.sub.1 is copied to the second image buffer 108 (FIG. 10(C)), the data in the update field 109 is erased from within the constant data 103 placed in the second image buffer 108 (FIG. 10(D)). The update field 109 in this state then accommodates second variable data 104.sub.2 "002" read from the storage area 106 (FIG. 10(E)). In this manner, the image data 102.sub.1 "PRINTER 001" and the image data 102.sub.2 "PRINTER 002" are generated in the first and the second image buffer 107 and 108, respectively.
In parallel with the data updating steps of FIGS. 10(C) through 10(E) performed in the second image buffer 108, the image data 102.sub.1 generated in the first image buffer 107 is printed out. The print-out operation issues the first label 101.sub.1 having an image "PRINTER 001" printed thereon as shown in FIG. 8.
The step of FIG. 10(E) is followed by an update of the first image buffer 107, effected by copying thereto the image data 102.sub.2 from the second image buffer 108 (FIG. 10(F)). Thereafter, the data in the update field 109 is erased from within the constant data 103 placed in the second image buffer 108 (FIG. 10(G)). The update field 109 in this state then accommodates third variable data 104.sub.3 "003" read from the storage area 106. That is, a process equivalent to the steps of FIGS. 10(C) through 10(E) is repeated.
In parallel with the data updating steps performed in the first image buffer 107, the image data 102.sub.2 generated in the second image buffer 108 is printed out. The print-out operation issues the second label 101.sub.2 having an image "PRINTER 002" printed thereon as depicted in FIG. 8.
As outlined, new image data 102 is generated by updating only the data in the update field 109. The update is effected by copying image data generated in one image buffer to the other buffer, i.e., from buffer 107 to buffer 108 or from buffer 108 to buffer 107. While the new image data is being generated in one buffer, the image data 102 generated in the other buffer is printed out to issue the label 101. This process, carried out repeatedly, issues successively the labels 101.sub.1, 101.sub.2, 101.sub.3, etc., with essentially identical images printed thereon together with partial differences.
The above kind of conventional technique has the following disadvantages. To generate the image data 102 in the image buffers 107 and 108 basically involves four steps: the image data 102 is generated in one image buffer 107 or 108; the generated image data 102 is then copied to the other image buffer 108 or 107; the data of the update field 109 is erased; and new variable data 104 is placed into the cleared update field 109 (FIGS. 10(C), 10(D), 10(E) and 10(F)). However, the image data 102 placed in the area other than the update field 109 ("PRINTER" in the example of FIGS. 10(A) through 10(G)) is the constant data 103 that need not be updated by definition. Nevertheless, the constant data 103 is updated every time the new image data 102 is generated. The redundant update process involving the constant data significantly prolongs the overall processing time.
In the image buffers 107 and 108, the area in which to accommodate the variable data 104 is limited to the update field 109. It follows that the size and position of the variable data 104 are constrained by the capacity of the update field 109 in the image buffers 107 and 108. This limits the types of variable data 104 that may be placed in the image buffers 107 and 108. Attempts to place into the update field 109 variable data 104 greater in size than the capacity of the update field 109 cause the excess portion of the data 104 to be truncated. In that case, the variable data 104 cannot be generated correctly as the image data 102.
It is therefore an object of the present invention to provide a printer capable of continuously printing out at higher speed essentially identical images with partial differences.
It is another object of the present invention to provide a printer offering higher degrees of freedom in printing variable images throughout the essentially identical images.
It is a further object of the present invention to provide a printer capable of maintaining the quality of variable images printed throughout the essentially identical images.